home *** CD-ROM | disk | FTP | other *** search
/ Aminet 25 / Aminet 25 (1998)(GTI - Schatztruhe)[!][Jun 1998].iso / Aminet / dev / misc / w2_gw_src.lha / w2-gw_src / MapEd.Bak / MapEd.amosSourceCode < prev    next >
Encoding:
AMOS Source Code  |  1998-02-20  |  1.7 KB  |  92 lines

  1. ' Waponez 2 - Groundwars - MapEd 
  2. ' By Marcus "Mopz" Johansson - (C) 1997 NC.Gamez 
  3. '
  4. ' Oh, how I love using AMOS for coding! It brings back loads of
  5. ' good, old memories (Waponez 1, JackMan, Questor...) :-)  
  6. '
  7. BLOCK=1 : SIZE=127
  8. OFFSET=SIZE-6
  9. Dim BL(8,127)
  10. 'Gosub BLOCKGET
  11. Screen Open 0,320,192,16,Lowres
  12. Curs Off 
  13. Flash Off 
  14. Cls 0
  15. Get Sprite Palette 
  16. Gosub MAPUPDATE
  17. Limit Mouse 128,56 To 408,230
  18. Do 
  19.    Bob Clear 
  20.    XM=X Screen(X Mouse)/32 : YM=Y Screen(Y Mouse)/32
  21.    XMD=XM*32 : YMD=YM*32
  22.    MB=Mouse Key : KY$=Inkey$ : KY=Asc(KY$)
  23.    If MB=1 Then USEDBLOCK=BLOCK : Gosub BLOCKDRAW
  24.    If MB=2 Then USEDBLOCK=1 : Gosub BLOCKDRAW
  25.    If KY$="+" Then Add BLOCK,1,1 To 60 : Wait 4
  26.    If KY$="-" Then Add BLOCK,-1,1 To 60 : Wait 4
  27.    If KY$="s" Then Gosub MAPSAVE
  28.    If KY$="l" Then Gosub MAPLOAD
  29.    If KY=30 Then Add OFFSET,-1,0 To SIZE-6 : Gosub MAPUPDATE
  30.    If KY=31 Then Add OFFSET,1,0 To SIZE-6 : Gosub MAPUPDATE
  31.    Bob 1,XMD,YMD,BLOCK
  32.    Bob Draw 
  33.    Wait Vbl 
  34. Loop 
  35. End 
  36. '  
  37. BLOCKGET:
  38. ' Get blocks...
  39. NR=0
  40. Erase 1
  41. Load Iff "block2new.pic",0
  42. For Y=0 To 5
  43.    For X=0 To 9
  44.       Inc NR
  45.       Get Bob NR,X*32,Y*32 To X*32+32,Y*32+32
  46.    Next 
  47. Next 
  48. Screen Close 0
  49. Return 
  50. '
  51. BLOCKDRAW:
  52. BL(XM,YM+OFFSET)=USEDBLOCK-1
  53. Paste Bob XMD,YMD,USEDBLOCK
  54. Return 
  55. '  
  56. MAPUPDATE:
  57. For Y=0 To 5
  58.    For X=0 To 8
  59.       Paste Bob X*32,Y*32,BL(X,Y+OFFSET)+1
  60.    Next 
  61. Next 
  62. Return 
  63. '  
  64. MAPSAVE:
  65. Screen Open 1,16,SIZE+1,64,Lowres
  66. Curs Off 
  67. Flash Off 
  68. Cls 0
  69. Screen 1
  70. For Y=0 To SIZE
  71.    For X=0 To 8
  72.       Ink BL(X,Y)
  73.       Plot X,Y
  74.    Next 
  75. Next 
  76. Save Iff Fsel$("")
  77. Screen Close 1
  78. Screen 0
  79. Return 
  80. '
  81. MAPLOAD:
  82. Load Iff Fsel$(""),1
  83. Screen 1
  84. SIZE=Screen Height-1
  85. For Y=0 To SIZE
  86.    For X=0 To 8
  87.       BL(X,Y)=Point(X,Y)
  88.    Next 
  89. Next 
  90. Screen Close 1
  91. Screen 0
  92. Return